/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package co.uniminuto.park.controlador;

import co.uniminuto.park.clases.AsignarParkinUsuario;
import co.uniminuto.park.clases.Estacionamiento;
import co.uniminuto.park.clases.Geolocalizacion;
import co.uniminuto.park.clases.Roles;
import co.uniminuto.park.clases.Usuario;
import co.uniminuto.park.dao.asignarDao;
import co.uniminuto.park.dao.consultaAsigParDao;
import co.uniminuto.park.dao.consultarRolDao;
import co.uniminuto.park.dao.consultarUsuarioDao;
import co.uniminuto.park.dao.consultarrEstacionamientoDao;
import co.uniminuto.park.dao.insertarEstacionamientoDao;
import co.uniminuto.park.dao.insertarUsuarioDao;
import java.util.ArrayList;
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.bean.SessionScoped;
import javax.faces.bean.ViewScoped;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import org.bson.types.ObjectId;
import org.primefaces.event.RowEditEvent;
import org.primefaces.model.map.DefaultMapModel;
import org.primefaces.model.map.LatLng;
import org.primefaces.model.map.MapModel;
import org.primefaces.model.map.Marker;

/**
 *
 * @author Esteban Rozo
 */
@ManagedBean
@ViewScoped
public class actualizarParkin {
private AsignarParkinUsuario asign;
private List<AsignarParkinUsuario> parkin;

FacesContext con = FacesContext.getCurrentInstance();
private String log;
HttpServletRequest req=(HttpServletRequest)con.getExternalContext().getRequest();
            HttpSession sesion= req.getSession(false);

    public List<AsignarParkinUsuario> getParkin() {
        return parkin;
    }

    public void setParkin(List<AsignarParkinUsuario> parkin) {
        this.parkin = parkin;
    }

    public AsignarParkinUsuario getAsign() {
        return asign;
    }

    public void setAsign(AsignarParkinUsuario asign) {
        this.asign = asign;
    }




   

   

    
    private EstacionamientosLista getElementoApplication() {
        FacesContext cont = FacesContext.getCurrentInstance();
        return cont.getApplication().evaluateExpressionGet(cont, "#{elementoApplication}", EstacionamientosLista.class);
    }

    public actualizarParkin() {
        parkin= new ArrayList<AsignarParkinUsuario>();
        parkin=cargarParkin();
        asign= new AsignarParkinUsuario();
     
    }

    
    public void addMessage(FacesMessage message) {
        FacesContext.getCurrentInstance().addMessage(null, message);
    }

    public List<AsignarParkinUsuario> cargarParkin(){
    List<AsignarParkinUsuario> lista;
    consultaAsigParDao  con = new  consultaAsigParDao();
     Usuario uSe= (Usuario) sesion.getAttribute("user");
    lista= con.getPark(uSe.getCorreo());
    return lista;
    }

   public void onEdit(RowEditEvent event) { 
      
    
       this.asign=((AsignarParkinUsuario)event.getObject());
    asignarDao ins= new asignarDao();
    ins.insertarAsi(this.asign);
    insertarEstacionamientoDao ActEst= new insertarEstacionamientoDao();
    ActEst.insertarEst(this.asign.getEstac());
       FacesMessage msg = new FacesMessage("Actualizado", "Se actualizado con exito");  
  
        FacesContext.getCurrentInstance().addMessage(null, msg);  
    }  
      
    public void onCancel(RowEditEvent event) {  
       FacesMessage msg = new FacesMessage("Car Cancelled", ((Usuario) event.getObject()).getNombre());  
  
        FacesContext.getCurrentInstance().addMessage(null, msg);  
    }  
        
    
}
